/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package factory;

import org.newdawn.slick.GameContainer;
import org.newdawn.slick.Graphics;

/**
 *
 * @author wida46984148
 */
public abstract class Shoot extends Entity{

    float dany;

    public Shoot(float dany) {
        this.dany = dany;
    }


    /**
     * Canvia la posició del projectil
     * @param posX
     * @param posY
     */
    public void setLocation(float posX, float posY) {
        super.posX = posX;
        super.posY = posY;
    }

    /**
     * Updateja el projectil
     * @param delta
     */
    public abstract void update(int delta);

    /**
     * Metode per simular un impacte
     */
    public abstract void impacte();

    /**
     * Metode emprat per a clonar un projectil
     * @return
     */
    public abstract Shoot copiarShoot();
    public abstract Shoot cloneShoot();

    /**
     * Getter dany
     * @return dany
     */
    public float getDany() {
        return dany;
    }

    /**
     * Setter dany
     * @param dany
     */
    public void setDany(int dany) {
        this.dany = dany;
    }

    public abstract  void render(GameContainer gc, Graphics g);

}
